//字面量
var obj={name:'fyh'};
//2.构造函数
var obj=new Object();
Object.name='zs';

//工厂模式
//-->函数的封装
function createPerson(name,age){
         var obj=new Object();
         obj.name=name;
         obj.age=age;
         obj.say=function(){
                console.log("I am "+this.name);
        }
       return obj;
}
var o1=createPerson('zs',12);
var o2=createPerson('fyh',13);
o1.say();
o2.say();
//构造函数模式 内部做属性的新增 外部生孩子
function Cat(name){
   this.name=name;
}
Cat.prototype.say=function(){
      console.log("i am"+this.name);
}
var c1=new Cat('1');
var c2=new Cat('2');
console.log(typeof c1,c1 instanceof Cat);